package com.punch.course.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.punch.common.dto.course.ClassDTO;
import com.punch.common.dto.course.ClassSaveOrUpdateDTO;
import com.punch.course.model.CourseSchool;


/**
 * <p>
 * 课程授课学校表 服务类
 * </p>
 *
 * @author wjj
 * @since 2020-12-01
 */
public interface CourseSchoolService extends IService<CourseSchool> {

    /**
     * 保存学校授课课程
     *
     * @param classSaveOrUpdateDTO 课程信息
     * @param classId              班级id
     * @param userId               当前用户uid
     * @param username             用户姓名
     */
    Long saveCourseSchool(ClassSaveOrUpdateDTO classSaveOrUpdateDTO, Long classId, Long userId, String username);

    /**
     * 修改学校授课课程--未发布状态
     *
     * @param classSaveOrUpdateDTO 课程信息
     * @param classId              班级id
     */
    void updateUnReleaseCourseSchool(ClassSaveOrUpdateDTO classSaveOrUpdateDTO, Long classId);

    /**
     * 修改学校授课课程--发布状态
     *
     * @param classDTO 课程信息
     * @param classId  班级id
     */
    void updateReleaseCourseSchool(ClassDTO classDTO, Long classId);
}
